﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace DiveManager
{
    public partial class Rental_Main : Form
    {
        public string id_weitergabe;
        
        protected DiveDatabaseEntities diveDatabase;
        protected BindingSource bindingSource;
        
        public Rental_Main()
        {
            InitializeComponent();

            // Init Database
            diveDatabase = new DiveDatabaseEntities();
            bindingSource = new BindingSource();
        }

        private void Rental_Main_Load(object sender, EventArgs e)
        {
            LoadData();

            txID.DataBindings.Add(new Binding("Text", bindingSource, "ID"));
            txGruppe.DataBindings.Add(new Binding("Text", bindingSource, "Name"));
            txBeschreibung.DataBindings.Add(new Binding("Text", bindingSource, "Bezeichnung"));
            txPreisNormal.DataBindings.Add(new Binding("Text", bindingSource, "Preis_Normal"));
            txPreisClub.DataBindings.Add(new Binding("Text", bindingSource, "Preis_Club"));
        }

        protected void LoadData()
        {
            IQueryable<Rental_Group> dataQuery = (from a in diveDatabase.Rental_Group
                                                   select a);

            // Bind Data to BindingSource
            bindingSource.DataSource = dataQuery;

            // Bind BindingSource to List
            GroupList.DataSource = bindingSource;


            // Hide ID-Columns
            GroupList.Columns["ID"].Visible = false;
            GroupList.Columns["Name"].Visible = true;
            GroupList.Columns["Bezeichnung"].Visible = false;
            GroupList.Columns["Preis_Club"].Visible = false;
            GroupList.Columns["Preis_Normal"].Visible = false;
            GroupList.Columns["DSD_Sort"].Visible = false;



            // Set Column Headers
            GroupList.Columns["Name"].HeaderText = "Gruppen";


        }

        private void btNewGroup_Click(object sender, EventArgs e)
        {
            //Anlegen einer neuen Gruppe
            Rental_NewGroup newgroup = new Rental_NewGroup();
            newgroup.Show();
        }

        private void btEdit_Click(object sender, EventArgs e)
        {
            //Ausgewählte Gruppe bearbeiten
            //In den TextBoxen angezeigter Lieferant an Rental_GrouEdit Form
            //übergeben 
            //wenn entsprechende Rechte vorhanden
            id_weitergabe = txID.Text;
            Rental_GroupEdit groupedit = new Rental_GroupEdit();
            groupedit.Weitergabe_Details = id_weitergabe;
            groupedit.Show();
        }

        private void btArtikelView_Click(object sender, EventArgs e)
        {
            //Artikel in dieser Gruppe anzeigen
            id_weitergabe = txID.Text;
            Rental_ArtikelView artikelView = new Rental_ArtikelView();
            artikelView.Weitergabe_Details = id_weitergabe;
            artikelView.Show();
        }
    }
}
